//
//  ViewController.m
//  UITableView
//
//  Created by dllo on 16/7/25.
//  Copyright © 2016年 dllo. All rights reserved.
//

#import "ViewController.h"
#import "UIView+Frame.h"
#define kTableViewReuse @"reuseIdentifier"
@interface ViewController ()<UITableViewDelegate,UITableViewDataSource>
//计数器
@property (nonatomic,assign) NSInteger numberCount;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    
    self.numberCount = 0;
    self.navigationController.navigationBarHidden = YES;
    UITableView *tableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStylePlain];
    [self.view addSubview:tableView];
//    tableView默认创建为开启状态
    tableView.alwaysBounceVertical = YES;
//    UIScrollView
//    行高默认为（44）
//    tableView.rowHeight = 200;
//    tableView.sectionHeaderHeight
    tableView.separatorColor = [UIColor redColor];
    //    分割线样式，设置隐藏分割线UITableViewCellSeparatorStyleNone
//默认UITableViewCellSeparatorStyleLine
//    tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
//    预估航高度
    tableView.estimatedRowHeight = 100;
    
//    headerview的x和y不影响其位置，一般用来放轮播图，个人资料
//    UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(1000, 1000, self.view.bounds.size.width, 200)];
//    headerView.backgroundColor = [UIColor greenColor];
////    如果透视图要频繁修改，必须加上beginUpdates和endUpdates
//    [tableView beginUpdates];
//    
//    tableView.tableHeaderView =  headerView;
//    tableView.tableHeaderView.sy_height = 400;
//    [tableView endUpdates];
////    footView x会对尾视图有影响，一般放
//    UIView *footView = [[UIView alloc] initWithFrame:CGRectMake(100, 0, self.view.sy_height, 200)];
//    footView.backgroundColor = [UIColor redColor];
//    
//    tableView.tableFooterView = footView;
    
//    tableView展示数据
//    delegate代理，帮助执行一些事件
//    datasource数据源 给tableview展示数据
    tableView.delegate = self;
    tableView.dataSource = self;
//    隐藏多余的tableview的空cell
//    空cell一般出现在一个界面只展示几条数据，站不满整个界面
    [tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:kTableViewReuse];
    
    tableView.tableFooterView = [[UIView alloc] init];
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 20;
}

//返回数据源cell的样式
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//    从冲泳池取出对应的标识的cell
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kTableViewReuse];
//    UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"reuseIdentifier"];
    
//    如果从冲泳池取出的cell为空，创建一个新的cell
    _numberCount++;
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:kTableViewReuse];
        NSLog(@"创建新cell%@--%ld",cell,_numberCount);
    } else {
        NSLog(@"重用旧%@",cell);
    }
//   cell创建方式-直接创建
//    从冲泳池中取出对应标识的cell
//    通过注册的方式创建
//    注意：cell注册出来的类型是default
    
    
    
//    cell属性
//    cellStyle
//    UITableViewCellStyleValue1 //坐标主标题，最右边副标题
//    UITableViewCellStyleValue2 //小子号，蓝色主标题，黑色副标题，主妇标题紧挨
//    UITableViewCellStyleDefault //默认style 没有副标题
//    UITableViewCellStyleSubtitle// 主妇标题上下紧挨
    
//    cell主标题
    cell.textLabel.text = @"哈哈";
//    cell副标题
    cell.detailTextLabel.text = @"我就呵呵了";
//    cell的图片
//    cell.imageView.image = [UIImage  imageNamed:@"1"];
    
    
    return cell;
}






- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
